package model;


public class SistemaLinear {

	public static Matriz ElinacaoGaussiana(Matriz A,Matriz B){
		double fator;
		Matriz c=new Matriz(A.getM());
		for (int i=0;i<A.getM()-1;i++){
			for(int j=i+1;j<A.getM();j++){
				fator=A.getValor(j, i)/A.getValor(i, i);
				for(int k=i;k<A.getN();k++){
					A.setValor(j, k, A.getValor(j, k)-fator*A.getValor(i,k));
				}
				B.setValor(j, B.getValor(j)-fator*B.getValor(i));
			}
		}
		double temp=0;
		for(int i=A.getM()-1;i>=0;i--){
			temp=0;
			for(int j=A.getM()-1;j>i;j--){
				temp+=A.getValor(i, j)*c.getValor(j);
			}
			c.setValor(i, (B.getValor(i)-temp)/A.getValor(i, i));
		}
		
		return c;
	}
}
